package ProyectoX;

/**
 * Clase Hilo extiende Thread
 * */
public class Hilo extends Thread{
	protected Nivel MiNivel;
	protected NaveEnemiga Final;
	
	/**
	 * Constructor Hilo
	 * Inicializa los atributos.
	 * */
	public Hilo (Nivel n){
		MiNivel = n;
		Final = MiNivel.obtenerNaveFinal();
	}
	
	/**
	 * Mientras la nave jugador esta viva y el nivel no esta en pausa
	 * Mueve y verifica si las naves son colisionada.
	 * */
	public void run(){
		try {
	
			while (MiNivel.obtenerNaveJugador().vive()){
				
				if(!MiNivel.Pausa()){
					
					for (NaveEnemiga Nave: MiNivel.obtenerNavesEnemigas()){
						Nave.Mover();
						Nave.Colisiones();
					}
					
					MiNivel.obtenerNaveFinal().Colisiones();
				}
				
				sleep(20);
				
			}
			
		}
		catch (InterruptedException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
	}
	
}
